This chapter presents requirements and recommendations for serial and parallel ports and wireless capabilities under the Microsoft Windows family of operating systems.
This section presents the key design issues for serial and parallel ports and wireless capabilities for PC 97 systems.
This section summarizes the requirements for serial and parallel ports in PC 97 system designs.
Basic PC 97 | Workstation PC 97 | Entertainment PC 97 |
Required | Required | Required |
Recommended: USB or PC Card. This capability can also be provided as a 16550A serial port or equivalent I/O capabilities provided in the system. If a legacy serial port is implemented in a PC 97 system, it must meet the requirements defined in this chapter. If two legacy serial ports are implemented, additional requirements are defined.
Basic PC 97 | Workstation PC 97 | Entertainment PC 97 |
Required | Required | Required |
Recommended: USB, IEEE 1394, or PC Card. This can also be provided as a parallel port with Extended Capability Port (ECP) mode capabilities. If a legacy port is implemented in a PC 97 system, it must meet the requirements defined in this chapter.
Basic PC 97 | Workstation PC 97 | Entertainment PC 97 |
Recommended | Recommended | Recommended |
Wireless capabilities can be provided as built-in capabilities in the system or by using PC Card, IEEE 1394, or USB. If wireless capabilities are included in the system, PC 97 requirements must be met as defined in this chapter.
This section summarizes requirements related to the design initiatives for PC 97 defined in Part 1 of this guide.
The items in this section are requirements for Plug and Play capabilities.
Required |
Required |
The system must be capable of automatically assigning, disabling, and relocating the resources used by this device when necessary, using the method required for the related bus class. Changing or adding this device to the system must not require changing jumpers or switches on either the adapter or the system board. In the event of an irreconcilable conflict with other devices on the system, the system must be able to disable the device to prevent the system from stalling.
If there is a conflict when more than one port or device of the same type is detected on the system, one of two methods can be used to resolve them:
This section summarizes the specific power management requirements for ports.
Required |
The "Device Class Power Management Reference Specification" for the communications device class provides definitions of the OnNow device power states (D0-D3) for serial devices. The specification also covers device functionality expected in each power state and the possible Wakeup event definitions for the class. Power states D0 and D3 are required; other states are recommended.
Required |
For PC 97, the ability to cause a Wakeup event as defined in the "Device Class Power Management Reference Specification" is a required feature.
This section summarizes requirements for device drivers for ports. The items in this section are requirements for all PC 97 systems.
Required |
The manufacturer does not need to supply a driver if a standard driver provided with the operating system can be used. If the manufacturer supplies drivers, the requirements include the following:
For complete details about standard installation requirements for drivers, see "Basic PC 97" in Part 2 of this guide.
This sections summarizes the hardware design features for serial ports for PC 97.
Serial ports have been used on computers for decades. In the past, standard baud rates for most serial ports ranged up to 19.2K baud. Now that systems and peripherals have become more demanding, higher-speed devices must be used to meet the needs of the newest generation of serial ports.
Required |
These include the standard requirements for a device identifier, automated software-only settings for device configuration, standard device drivers and Windows-based installation, and icons for external connectors. For more information see the "Basic PC 97" chapter of this guide.
This section defines requirements for legacy serial ports.
Required |
A 16550A buffered UART or equivalent buffered serial port is required to support high-speed communications while reducing the CPU requirements for servicing the device. The device must be able to support 115.2K baud.
Required |
A legacy serial port must provide flexible resource configuration and complete dynamic disable capabilities following Plug and Play External COM Device Specification v. 1.0.
These are the recommended resource settings for non-PCI devices:
Two IRQs are required for each port. If two serial ports are implemented in the system, the IRQs can be assigned as follows:
An infrared adapter (IR) port might replace a serial port in a system. In such a case, the IR port should use the resource configuration that would otherwise be assigned to the second serial port.
Notice that, as for all devices, IRQ sharing is required if the minimum resource requirement cannot be met.
Required |
In the event of an irreconcilable conflict with other serial ports on the system, a serial port must be capable of being disabled by the Plug and Play software. This allows at least one of the two conflicting serial ports to operate correctly.
This section defines requirements for non-legacy implementations to support serial port capabilities.
Required |
As required for all PC 97 devices, a serial port implementation that uses a non-legacy bus must meet the specific device-class requirements for that bus.
For example, a serial port implementation that uses USB must comply with all related USB specifications, including the USB Specification 1.0 (or higher) and Universal Serial Bus Device Class Definition for Communication Devices 1.0 (or higher). The appendix titled "Standard Serial Interface Circuit Emulation" in the USB Device Class Definition for Communication Devices specifically addresses compatibility for serial ports.
This section summarizes the basic design features for parallel ports and peripherals. Each parallel port on a PC 97 system must meet the requirements listed in this section.
Required |
These include the standard requirements for a Plug and Play device identifier, automated software-only settings for device configuration, standard device drivers and Windows-based installation, and icons for external connectors. For more information see the "Basic PC 97" chapter of this guide.
This section defines requirements for legacy parallel ports.
Required |
A legacy parallel port must provide flexible resource configuration following Plug and Play Parallel Port Device Specification v. 1.0b. Resource requirements must be met for each device of this type on the system. The requirements cannot be split between two ports on the system.
For non-PCI devices, these are the minimum resource requirements for each parallel port on the system:
Recommended: Also map the base I/O address to four additional locations.
Recommended: Support five additional IRQ signals.
To ensure Plug and Play support for resolution of resource conflicts, a full list of options for all possible configuration combinations must be enumerated, including:
Windows considers the parallel port base (/) address stored in the first BDA locations to be LPT1. The address stored in the second location is LPT2, and so on.
Required |
Some Enhanced Parallel Port (EPP) implementations require eight contiguous I/O ports. If EPP support is implemented, the hardware cannot use 3BCh as a base I/O address because VGA devices require use of port 3C0h.
Required |
Support for a parallel port must include the compatibility mode and nibble mode protocols required by the IEEE 12841994 specification for minimum compliance. This allows other 1284-compliant devices to be connected without problems.
The port must also support the ECP protocol as defined by IEEE 1284 to allow connections with higher speed parallel peripherals.
Required |
IEEE 1284-I - compliant ports use a standard DB25 connector found on existing system parallel port designs, called a 1284-A connector in the specification.
IEEE 1284-II - compliant ports use a 1284-C connector. This connector is used on both the port and the peripheral device.
The parallel port design must provide enough space between the connectors and the surrounding enclosure to allow for a mating connector, the connector shell, and the latch assembly. The IEEE 1284 specification recommends a 1284-C connector for all new ports and devices.
Required |
The device identifier is described fully in the IEEE 1284 specification. All characters in the device identification string must consist only of ASCII values from 20h to 7Fh. The device identification string consists of a leading zero, a hexadecimal value that represents the length of the string, and then a set of fields, in ASCII, with a unique identification string.
For PC 97, in addition to the requirements specified in the Plug and Play Parallel Port Device Specification v. 1.0b, the device-ID string must contain these keys at a minimum: MANUFACTURER (MFG), MODEL (MDL), CLASS (CLS), and DESCRIPTION (DES). The keys are case sensitive and can be abbreviated as indicated.
All MANUFACTURER and MODEL key values must remain unique from each manufacturer. All MANUFACTURER, MODEL, CLASS, and DESCRIPTION key values must remain static for a specific unit (that is, identifier values do not change for different hardware configurations). For example, a user simply adding a memory module to a printer should not change the MODEL key value reported as part of the device identifier. However, if the user adds memory by installing an upgrade kit that requires a different driver or requires the existing driver to behave differently, then changing the MODEL value is acceptable as part of the upgrade installation process.
The CLASS key describes the type of parallel device. The CLASS key can contain the values PRINTER, MODEM, NET, HDC, PCMCIA, MEDIA, FDC, PORTS, SCANNER, or DIGCAM. HDC refers to hard disk controller. MEDIA refers to any multimedia device. FDC refers to floppy-disk drive controller.
The DESCRIPTION key is an ASCII string of up to 128 characters that contains a description of the device the manufacturer wants to have presented if a device driver is not found for the peripheral.
For information about how the system determines the correct peripheral device driver, see the Windows 95 and Windows NT DDKs.
Recommended |
The CompatibleID (CID) key can provide a value that exactly matches a peripheral name supported by a device driver shipped with Windows. The value must match a value listed in the device's INF file.
This section defines requirements for non-legacy implementations to support parallel port capabilities.
Required |
As required for all PC 97 devices, a parallel port implementation that uses a non-legacy bus must meet the specific device-class requirements for that bus.
For example, a parallel port implementation that uses USB must comply with all related USB specifications, including the USB Specification 1.0 (or higher) and any specific device class specification.
This section summarizes the basic design features for wireless components, provided either as infrared (IR) adapters or radio frequency (RF) adapters.
Many manufacturers are implementing integrated IR solutions for mobile PCs. Various form-factor and environmental issues limit the adoption of wireless solutions for desktop PCs, including receiver placement in the office environment and methods for limiting conflicting device signals.
Microsoft recommends that manufacturers move their wireless designs to incorporate fast IR solutions as soon as possible. Fast IR transmits and receives data at speeds of 1.152 Megabits per second (Mbps) and 4.0 Mbps. Fast IR includes design implementations that improve usability. However, interoperability issues still must be addressed.
The requirements listed in this section must be met if wireless capabilities are provided in the system.
Required |
These include the standard requirements for a unique Plug and Play device identifier, automated software-only settings for device configuration, standard device drivers and Windows-based installation, and icons for external connectors. For more information see the "Basic PC 97" chapter of this guide.
Required |
The "Device Class Power Management Reference Specification" for wireless devices provides definitions of the OnNow device power states (D0 - D3) for these devices. The specification also covers device functionality expected in each power state and the possible Wakeup event definitions for the class. Power states D0 and D3 are required. Other states are recommended.
Optional |
For PC 97, the ability to cause a Wakeup event as defined in the "Device Class Power Management Reference Specification" for wireless devices is an optional feature.
This section summarizes basic design features for infrared components.
Required |
A software solution is not acceptable. Echo cancellation must be supported in the hardware.
Required |
An NDIS 4.0 IrDA miniport driver is required for all IR devices. Full documentation and sample source code for building such a miniport driver is in the Windows NT 4.0 DDK.
Recommended |
Device support for input speeds of 4 Mbps is strongly recommended.
Recommended |
If the system is intended to run data transfer applications, support of the IrDA specifications is required. If the system is intended for the home market, support for consumer IR technology is also recommended. A combination chip set that supports both IrDA and consumer IR technology is recommended for all systems.
Required |
This requirement ensures correct implementation for a system that includes IR support for both IrDA codes and remote control devices that use different device signals. A system that uses only a specific remote control protocol will restrict the ability to use multiple input devices and might also restrict other capabilities.
The system needs a method for either automatically switching to alternate modes or notifying the IR driver of the need to switch modes. If the second alternative is used, then the device manufacturer must publish the hardware interface the software can use for mode switching.
Recommended |
The minimum IrDA device range that must be supported is 1 meter, but the home user is expected to use remote control devices at ranges greater than that.
Recommended |
For future multipoint IR protocols, filtering unicast packets not directed at the receiver will optimize performance.
Required |
The adapter must provide flexible resource configuration and complete dynamic disable capabilities following the specifications for the bus or legacy port used. These are the recommended resource settings for non-PCI devices:
Recommended: 7 unique I/O locations
Recommended: 7 unique IRQ signals
Notice that, as for all devices, IRQ sharing is required for ISA if the minimum resource requirement cannot be met.
Required |
The requirements for all bus classes are defined in Part 3 of this guide. The Windows operating system includes built-in support for devices that use the serial I/O interface; in this case, the wireless device must also comply with the requirements specified in the "Serial Port" requirements section earlier in this chapter. A device that uses the parallel port must comply with the requirements specified in the "Parallel Port and Peripheral Requirements" section earlier in this chapter.
Radio Frequency (RF) is the preferred medium to support wireless keyboard devices and any other wireless PC peripheral used for sessions of relatively long duration or conducted at a relatively long range. In contrast, IR is the preferred medium to support devices used in point-and-shoot, ad-hoc sessions of short duration, conducted at short range.
Use of RF in cordless peripherals such as keyboards, mice, joysticks, and remote controls is attractive to users. These cordless peripherals are direct substitutes for the devices attached to the PC with cables.
Other uses of RF attractive to users are home and small-office networking, cordless telephones, and cordless audio headphones. Manufacturers are encouraged to develop low-priced, relatively short-range solutions for these markets.
Manufacturers who are implementing designs that include RF devices are strongly encouraged to communicate with Microsoft. Microsoft wants to work with manufacturers to standardize RF protocols and media within the computer industry. Please send e-mail to ihv@microsoft.com. For more information about RF alternatives, see http://www.microsoft.com/hwdev/devdes/.
Recommended |
For relatively short-range RF devices, it is possible to use a low-power RF device. Use an RF device appropriate to the application. For example, cordless keyboard and trackball devices only need a maximum range of 15 to 20 feet.
Recommended |
RF devices should have a way to defeat noise, such as EMI interference. Also, programmable channel selection, carrier sensing, or the relatively expensive spread-spectrum or frequency hopping techniques can be used to share the RF medium with other RF devices that might be in the environment.
Recommended |
Rules for certifying low-power, short-range, unlicensed RF devices vary greatly from country to country. By configuring the RF device as a system add-on, local certification of the system will not be blocked while waiting for certification of the RF device, which might take longer. Configuring the RF device as a system add-on also enables adding RF support to legacy hardware.
This section lists some resources to help build hardware that works with Windows operating systems.
Plug and Play documentation
http://www.microsoft.com/hwdev/pnpspecs.htm
Device Class Power Management Reference Specification
http://www.microsoft.com/hwdev/onnow.htm
Windows NT DDK, Windows 95 DDK, and Infrared Communications for Windows 95 DDK
MSDN Professional membership
Infrared Data Association Serial Infrared (SIR) Physical Layer Specification
Available only to IrDA members:
Infrared Data Association (IrDA)
P. O. Box 3883
Walnut Creek, CA 94598 USA
Phone: (510) 943-6546
Fax: (510) 943-5600
E-mail: irda@netcom.com
Basic PC 97 | Workstation PC 97 | Entertainment PC 97 |
System Requirements for Serial, Parallel, and Wireless Support | ||
---|---|---|
1. Connection for external serial devices | ||
Required | Required | Required |
2. Connection for external parallel devices | ||
Required | Required | Required |
3. Wireless capabilities in PC system | ||
Recommended | Recommended | Recommended |
PC 97 Design Features for Ports | ||
Plug and Play and Bus Design for Ports | ||
4. Plug and Play device identifier | ||
Required | ||
5. Automatic resource assignment and dynamic disable capabilities | ||
Required | ||
Power Management for Ports | ||
6. Compliance with Device Class Power Management Reference Specification | ||
Required | ||
7. Support Wakeup Events defined in "Device Class Power Management Reference Specification" | ||
Required | ||
Device Drivers and Installation for Ports | ||
8. Device driver and installation meet Windows and Windows NT standards | ||
Required | ||
Serial Port Requirements | ||
9. General device requirements | ||
Required | ||
Legacy Serial Port Requirements | ||
10. 16550 UART (or equivalent) with support for 115.2K baud | ||
Required | ||
11. Flexible resource configuration and dynamic disable | ||
Required | ||
12. Conflict resolution ensures availability of at least one serial port | ||
Required | ||
Requirements for Other Serial Port Implementations | ||
13. Serial port complies with device-class specifications for its bus | ||
Required | ||
Parallel Port and Peripheral Requirements | ||
14. General device requirements | ||
Required | ||
Legacy Parallel Port Requirements | ||
15. Flexible resource configuration for each parallel port | ||
Required | ||
16. I/O address restrictions for EPP support | ||
Required | ||
17. Compatibility, nibble mode, and ECP protocols compliant with IEEE 1284-1994 | ||
Required | ||
18. Port connectors compliant with 1284-I, at a minimum | ||
Required | ||
19. Plug and Play device identifier for 1284 peripherals | ||
Required | ||
20. Support CompatibleID key in the device identification string | ||
Recommended | ||
Requirements for Other Parallel Port Implementations | ||
21. Parallel port complies with device-class specifications for its bus | ||
Required | ||
Wireless Component Requirements | ||
22. General device requirements | ||
Required | ||
23. Compliance with "Device Class Power Management Reference Specification" for wireless devices | ||
Required | ||
24. Support Wakeup Events defined in "Device Class Power Management Reference Specification" | ||
Optional | ||
IR Requirements | ||
25. Echo cancellation in hardware, for slow-speed IR devices | ||
Required | ||
26. NDIS 4.0 miniport driver for IR devices | ||
Required | ||
27. System supports 4 megabits per second standard for input | ||
Recommended | ||
28. System supports both IrDA and consumer IR remote control devices | ||
Recommended | ||
29. System differentiates command streams if both IrDA and remote control devices are supported | ||
Required | ||
30. System supports a minimum range of 3 meters if both IrDA and remote control devices are supported | ||
Recommended | ||
31. Unicast filtering, for high-speed IR device | ||
Recommended | ||
32. Flexible resource configuration and dynamic disable | ||
Required | ||
33. Device compliant with bus and port specifications | ||
Required | ||
RF Recommendations | ||
34. Select a low-power RF alternative | ||
Recommended | ||
35. Consider noise and conflict with other RF devices in the environment | ||
Recommended | ||
36. Separate certification of the system and the RF device | ||
Recommended | ||
|